Various embodiments described herein relate to computer systems, methods and program products, and more particularly to command driven computer systems, methods and program products.
Command driven computer systems, methods and program products are widely used for user interaction with a computer. In command driven systems, methods and program products a user or other client issues commands to a computer program product in the form of successive lines of text, also referred to as command lines. Alternatives to command driven user interfaces include, but are not limited to, menu driven user interfaces and various desktop metaphors centered on a pointer, usually controlled with a mouse.
Historically, command driven user interfaces were the earliest techniques for user interaction with mainframe or enterprise computer programs. Command driven user interfaces were also used as the primary user interaction with many other early operating systems including MS-DOS, CP/M, UNIX and Apple DOS. A command driven interface may be implemented with a command line shell, which is a program that accepts commands as text input and converts the commands to appropriate operating system functions. The commands may be input in a command line or may be provided as a series of statements using programming languages such as COBOL, C, etc.
Presently, command driven interfaces are less widely used by casual users, who generally favor graphical user interfaces. However, command driven interfaces are still often preferred by more advanced computer users, as they can provide a more concise, flexible and powerful technique to control a computer.
A command driven computer program product will generally include a large number of commands, each of which may include one or more operands, sub-operands and parameters. The syntax of the command, operands, sub-operands and parameters is typically rigidly defined by a “reference guide” for the computer program product. Whether online or hard copy, the reference guide provides the details for each command and the operands, sub-operands and parameters which must be met for the command to be effective. Other tools may be used to flag errors in a command as it is being generated.